Video coding involves representing video data, for storage and/or transmission, for both analog and digital video. The goals of video coding are to accurately represent the video data compactly, provide means for navigating the video (i.e., search forward, backward, random access, etc.) and provide other additional author and content benefits such as subtitles. One of the most difficult tasks in video coding is reducing the size of the video data using video compression. Video compression generally refers to the techniques for reducing the quantity of data used to represent digital video data, and is a combination of spatial image compression and temporal motion compensation.
The search for efficient video compression techniques has dominated much of the research activity concerning video coding since the early 1980s. The first major milestone was the H.261 standard, from which the Joint Photographic Experts Group (JPEG) adopted the idea of using the Discrete Cosine Transform (DCT). Since then, many other advancements have been made to compression techniques such as motion estimation. In particular, the International Telecommunications Union (ITU) have published a number of standards aimed at coding video data including H.261, H.262 and H.263. The International Organization for Standardization (ISO) and International Electrotechnical Commission (IEC) joined together to make the latest video coding standard, H.264/Advanced Video Coding (AVC), also known as MPEG-4 part 10. The H.264 standard is a successor to earlier standards such as MPEG-2 and MPEG-4. The standard protocols of H.261, H.262, H.263, H.264/AVC, MPEG-2, MPEG-4, AVS (including AVS-M, AVS1.0, and etc), and H.264/SVC are hereby incorporated by reference.
Due to the rapid growth of the Internet and the increasing demand for video content, video streaming services over communication networks have received tremendous attention from academia and industry. In a typical streaming system, the compressed video streams are transmitted from a server to client devices for real time decoding and displaying. To mitigate the packet loss or delay during transmissions, a variety of error resilience techniques have been proposed. Most previous error resilience techniques focus on improving the error robustness during online compression. In video streaming systems such as video on demand systems, however, the video server provides video services based on offline compressed video. Therefore, it is desired to improve the error resilience of transmitting previously compressed video for providing high-quality video services